package com.qi.demo01.Lock8;

/**
 * @author zjq
 * @date 2020/3/25 19:50
 */

import java.util.concurrent.TimeUnit;

/**
 * 8锁，就是关于锁的8个问题
 */
public class Test {
    public static void main(String[] args) throws InterruptedException {
        Phone phone = new Phone();
        //因为锁的存在

        new Thread(() -> {
            phone.sendSms();
        }, "A").start();
        TimeUnit.SECONDS.sleep(1);
        new Thread(() -> {
            phone.call();
        }, "A").start();
    }
}

class Phone {
    //Synchronized 锁的对象是方法的调用者
    //两个方法用的同一个锁，谁先拿到谁先执行。
    public synchronized void sendSms() {
        System.out.println("send");
    }

    public synchronized void call() {
        System.out.println("call");
    }
}
